Voice over internet protocol (VoIP) communication systems allow the user of a device, such as a personal computer (e.g. desktop, laptop or tablet PC) or a smartphone, to make calls across a computer network such as the Internet. These systems are beneficial to the user as they are often of much lower cost than fixed line or mobile networks and, in addition to audio streams, can also provide video and data streams.
However, known VoIP systems such as Skype or FaceTime can only establish connections between “subscribers” registered in the service provider database (typically with a telephone number or a user ID). Thus, in order to call another user, one user needs to be registered into a service provider database and may only connect to another user that is also registered in a service provider database. Gateways or bridges can interconnect these databases and/or translate the communication protocols between service providers, but each service provider works along the same model, in which the communication services and protocols and the naming model are tightly coupled within a single communication infrastructure and subscribers database, under the control of a given service provider.
Under such a constrained model, it is not possible for a user to communicate anonymously, i.e. without being a subscriber of a particular service provider. Moreover, a user cannot communicate with someone not registered with a particular service provider, and for which the subscriber ID within this service provider is not known in advance. In other words, according to current models, all links are quasi static i.e. the caller subscriber is linked to a caller subscriber ID which is in turn linked to a specific service provider communication infrastructure which is further linked to a callee subscriber ID that is linked to the callee.
Another drawback in such systems is that the same subscriber ID (or a small number thereof) needs to be used to communicate with a user on a given service provider network.
Other known multimedia communication systems offered via the Internet such as “click to chat” allow a website user to communicate with a service agent without being previously registered within a communication service provider database. However, such services are only available from a web browser, and are only designed to communicate with a service agent of a given website, or other users of that same website. Moreover, such communications are usually limited to text communication, or file sharing.
Web Real-Time Communication (WebRTC) is an Application Programming Interface (API) definition being drafted by the World Wide Web Consortium (W3C) which enables browser-to-browser applications for voice calling, video chat and data transfer without plugins.